package org.budo.mail.javax;

import java.util.Date;
import java.util.List;
import java.util.Map;

import javax.mail.Message;

import org.budo.mail.Mail;

/**
 * @author lmw
 */
public interface ReceiveMail extends Mail {
    String getMessageId();

    List<String> getToAddresses();

    Date getSentDate();

    Date getReceivedDate();

    Message getMessage();

    String getUid();

    List<String> getCcAddresses();

    String getHeader(String string, String string2);

    /**
     * 删除
     */
    Boolean delete();

    /**
     * 标记为已读 
     */
    Boolean seen();

    List<String> getBccAddresses();

    Object messageToMap();

    void setCcAddresses(List<String> ccAddresses);

    void setSubject(String subject);

    List<MailAttachment> getAttachments();

    Map<String, List<String>> getHeaders();

    List<String> getHeaders(String key);

    String getHeader(String key);
}